home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 5 / Amiga Tools 5.iso / tools / dfÜ / bbs / aptbbs1 / apt / docs / aml.doc < prev    next >
Encoding:
Text File  |  1995-12-08  |  23.8 KB  |  1,511 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.                                  AML.HYPER
  7.  
  8.  
  9.                                   Version
  10.                                     1.00
  11.  
  12.  
  13.  
  14.  
  15.                                  Andy Grifo
  16.  
  17.  
  18.  
  19.                               ApT-Design 1995
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.                         Generated with Heddley v1.1
  37.                      Heddley v1.1 (C) Edd Dumbill 1994
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.                                  - Page 1 -
  77.  
  78.  
  79.  
  80. 1.    MAIN
  81.  
  82.                             ApT-BBS AML Guide
  83.  
  84.                       Copyright (c) 1995 ApT-Design
  85.  
  86.  
  87.                 AML List                               
  88.                 What is AML exactly?                   
  89.                 Formatting AML Codes, sprintf style    
  90.                 Faaaassst AML                          
  91.  
  92. 2.    AML_FORMAT
  93.  
  94.  
  95.    AML Codes that return strings can all be formatted into a FORCED
  96.    with by using the  STRWID  command. This enambles text
  97.    to be set to a forced width, resulting in all subsiquent text strings
  98.    returned being the same width.
  99.  
  100.    This is a very handy feature and will be of much use once it's
  101.    power is fully understood.
  102.  
  103. 3.    WHATIS_AML
  104.  
  105.  
  106.    AML Is a sequence of SWITCH codes, normally denoted by the percentage
  107.    sign % which tells ApT-BBS that it is to do something depending
  108.    on the command tjay was embedded within the % , leading upto the
  109.    ending/closing dot . sign.
  110.  
  111.    %  denotes the START of a AML specific command
  112.    .  denotes the ENDING of a AML specific command
  113.  
  114.    As a small example - if you have a file of some form that contains
  115.    text that is being displayed to the screen, a menu of sorts. Then
  116.    you may wish to have the users last name displayed prior to asking
  117.    the user for a keypress. Embedding the following within the menu,
  118.  
  119.    "Well then %FNAME., time to press a key don't you think =>"
  120.  
  121.    Would have the effect of being converted into the following line
  122.  
  123.    Well then Andy, time to press a key don't you think =>
  124.  
  125.    AML is built within most of the ApT-BBS display system, ranging from
  126.    commands such as the AREXX 'MSG' command to the programmers library
  127.    ShowFile("filename"); command, even menus that are displayed. Just
  128.    about everything that is displayed passes through the AML system
  129.    at some point.
  130.  
  131.    AML is so powerful and fast that it even checks to see if users
  132.    have the ability to take various commands. Items that change
  133.    the colour are of no use to users who have no ANSI abilities.
  134.  
  135.    AML also is so powerful in that it monitors the actual RAW
  136.    escape codes, the type of which are located within ANSI
  137.    editors that save out screen designs. Some users may have
  138.    preferenced NO ANSI and AML removes items of a unwanted
  139.    nature.
  140.  
  141. 4.    AML_LIST
  142.  
  143.                              ApT-BBS AML List
  144.  
  145.  TC             BC             CLS            BOLD           ANSIRESET    
  146.  
  147.                                  - Page 2 -
  148. 4.    AML_LIST
  149.  
  150.  CURSOR         WAITKEY        CURSOR_LEFT    CURSOR_RIGHT   CURSOR_UP    
  151.  CURSOR_DOWN    UNDERLINE      RVIDEO         ITALICS        CPOS         
  152.  NL             REVIEW         YPOS           FNAME          LNAME        
  153.  ANSI           LOCKSERIAL     STRWID         NAME           UNAME        
  154.  VOICENO        DATANO         PASSWORD       HANDLE         ADDRESS      
  155.  CITY           PROVINCE       POSTCODE       COUNTRY        LEVEL        
  156.  VALID          CALLS          MSGLEFT        MSGREC         FILESUP      
  157.  FILESDN        BYTESUP        BYTESDN        CREDITS        FRATIO       
  158.  BRATIO         SCRLENGTH      SCRWIDTH       MORE          
  159.  
  160.    The following are only valid for use within a initiated file-area, and
  161.    loaded file-index area.
  162.  
  163.  TOTALFILES     AREANUMBER     FILEPOS        AREANAME       INDEXSORT    
  164.  DIRECTION      FILTER         FILESMARKED  
  165.  
  166.    The following are for use as additional arguments, for such things
  167.    as calling DOS Doors.
  168.  
  169.  RAW            ECHO           CRLF           CTRL_C         CTRL_D       
  170.  HANDLER        COL          
  171.  
  172. 5.    FAST_AML
  173.  
  174.  The following commands are the fastest draw on the west when it comes to
  175. changing a style. When speed is of the essence these commands come into
  176. their own.
  177.  
  178. All of the commands below start with a different switch character than the
  179. standard set of AML Codes, this is the \ key.
  180.  
  181. \c<number>  Changes the Text colour 0-9             \c7 WHITE TEXT
  182. \z<number>  Changes the Background colour 0-9       \z4 BLUE BACKGROUND
  183.  
  184. \oBOOL      Changes the Cursor, ON/OFF              \o0 Cursor OFF \uBOOL
  185. Changes Underline mode ON/OFF           \u1 Underline ON \bBOOL      Changes
  186. Bold mode ON/OFF                \b1 BOLD ON \iBOOL      Changes Italic mode
  187. ON/OFF              \i0 ITALICS OFF
  188.  
  189. \ @         Clears the screen, if preferenced to do so. \n          Newline
  190. character.
  191.  
  192.  
  193. 6.    BOOL
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.    BOOLEAN values within the AML instances should always be specified
  203.    as either 0 or 1, 0 denotes FALSE and 1 denotes TRUE (OFF/ON)
  204.  
  205.  
  206. 7.    TC
  207.  
  208.  TITLE:
  209.  
  210.    Text Colour
  211.  
  212. TEMPLATE:
  213.  
  214.    %TC=<colour>.
  215.  
  216. FUNCTION:
  217.  
  218.    Changes the Text colour to one of the selected colour sequences.
  219.  
  220.                                  - Page 3 -
  221. 7.    TC
  222.  
  223.  
  224. EXAMPLE:
  225.  
  226.    %TC=1.
  227.  
  228.    Changes the Text colour to Red.
  229.  
  230.  
  231. 8.    BC
  232.  
  233.  TITLE:
  234.  
  235.    Background Colour
  236.  
  237. TEMPLATE:
  238.  
  239.    %BC=<colour>.
  240.  
  241. FUNCTION:
  242.  
  243.    Changes the Background colour to one of the selected colour sequences.
  244.  
  245. EXAMPLE:
  246.  
  247.    %BC=7.
  248.  
  249.    Changes the Background colour to White.
  250.  
  251.  
  252. 9.    CLS
  253.  
  254.  TITLE:
  255.  
  256.    Clear the screen.
  257.  
  258. TEMPLATE:
  259.  
  260.    %CLS.
  261.  
  262. FUNCTION:
  263.  
  264.    Clears the screen using two forms of Screen clear code, thus making
  265.    quite sure the screen is refreshed on all terminal software.
  266.  
  267.    The screen will only be cleared if the user has screen clear codes
  268.    selected within his preferences. If you are required to make sure
  269.    the user actually has his screen cleared, then a hard-coded clear
  270.    code may be required.
  271.  
  272.  
  273. 10.    BOLD
  274.  
  275.  TITLE:
  276.  
  277.    Bold - Toggle.
  278.  
  279. TEMPLATE:
  280.  
  281.    %BOLD=BOOL.
  282.  
  283. FUNCTION:
  284.  
  285.    Turns BOLD lettering ON or OFF depending on which of the boolean
  286.    switches is passed.
  287.  
  288. EXAMPLE:
  289.  
  290.    %BOLD=1.  Turns BOLD lettering ON
  291.  
  292.    %BOLD=0.  Turns BOLD lettering OFF
  293.  
  294.  
  295.                                  - Page 4 -
  296. 10.    BOLD
  297.  
  298.  
  299. 11.    ANSIRESET
  300.  
  301.  TITLE:
  302.  
  303.    Ansi Reset
  304.  
  305. TEMPLATE:
  306.  
  307.    %ANSIRESET.
  308.  
  309. FUNCTION:
  310.  
  311.    Quite often it is required for all of the Styles to be turned off
  312.    quickly and easily. This command allows just that. It is generally
  313.    recommended to turn on a default colour after use of this call, as
  314.    on some communication packages the default text (after the reset)
  315.    will be RED.
  316.  
  317.  
  318. 12.    CURSOR
  319.  
  320.  TITLE:
  321.  
  322.    Toggle Cursor On/Off
  323.  
  324. TEMPLATE:
  325.  
  326.    %CURSOR=BOOL.
  327.  
  328. FUNCTION:
  329.  
  330.    Toggles the Cursor On/Off - This speeds up the displaying of text
  331.    quite considerably. It should be noted that a few terminal packages
  332.    can not handle the turning on and off of the cursor, for some odd
  333.    reason, and thus this option is "preferenced" and stored.
  334.  
  335.  
  336. EXAMPLE:
  337.  
  338.    %CURSOR=0.
  339.  
  340.  
  341. 13.    WAITKEY
  342.  
  343.  TITLE:
  344.  
  345.    Waitkey
  346.  
  347. TEMPLATE:
  348.  
  349.    %WAITKEY.
  350.  
  351. FUNCTION:
  352.  
  353.    Waits for a key to be pressed by the user - Can be embedded within
  354.    a string so that the remaining text, if placed within the middle,
  355.    is displayed after the key-press.
  356.  
  357.  
  358. EXAMPLE:
  359.  
  360.    "Gosh your slow, .. how about pressing a key [Waiting]%WAITKEY.Thanks!!"
  361.  
  362.  
  363. 14.    CURSOR_DIRECTION
  364.  
  365.  TITLE:
  366.  
  367.    Cursor Direction
  368.  
  369.                                  - Page 5 -
  370. 14.    CURSOR_DIRECTION
  371.  
  372.  
  373. TEMPLATE:
  374.  
  375.    %CURSOR_LEFT=<positions>.
  376.    %CURSOR_RIGHT=<positions>.
  377.    %CURSOR_UP=<positions>.
  378.    %CURSOR_DOWN=<positions>.
  379.  
  380. FUNCTION:
  381.  
  382.    Moves the cursor within the direction pertaining to the command,
  383.    so many spaces depending on the positions supplied.
  384.  
  385. EXAMPLE:
  386.  
  387.    "I would like to teach the world    sing..%CURSOR_LEFT=9.to"
  388.  
  389.    "I would like to teach the world to sing"
  390.  
  391.  
  392. 15.    UNDERLINE
  393.  
  394.  TITLE:
  395.  
  396.    Underline
  397.  
  398. TEMPLATE:
  399.  
  400.    %UNDERLINE=BOOL.
  401.  
  402. FUNCTION:
  403.  
  404.    Turns underline mode on/off
  405.  
  406. EXAMPLE:
  407.  
  408.    %UNDERLINE=1.  Turns underline mode on.
  409.  
  410.  
  411. 16.    RVIDEO
  412.  
  413.  TITLE:
  414.  
  415.    Reverse Video
  416.  
  417. TEMPLATE:
  418.  
  419.    %RVIDEO=BOOL.
  420.  
  421. FUNCTION:
  422.  
  423.    Turns Reverse-Video mode on/off
  424.  
  425. EXAMPLE:
  426.  
  427.    %RVIDEO=0. Turns Reverse Video mode off.
  428.  
  429.  
  430. 17.    ITALICS
  431.  
  432.  TITLE:
  433.  
  434.    Italics Style
  435.  
  436. TEMPLATE:
  437.  
  438.    %ITALICS=BOOL.
  439.  
  440. FUNCTION:
  441.  
  442.  
  443.                                  - Page 6 -
  444. 17.    ITALICS
  445.  
  446.    Turns the Italics Style on/off.
  447.  
  448. EXAMPLE:
  449.  
  450.    %ITALICS=1. Turns Italics style on.
  451.  
  452.  
  453. 18.    CPOS
  454.  
  455.  TITLE:
  456.  
  457.    Cursor Position
  458.  
  459. TEMPLATE:
  460.  
  461.    %CPOS=<ypos,xpos>.
  462.  
  463. FUNCTION:
  464.  
  465.    Positions the cursor at the required position pertaining to the
  466.    Y and X co-ordinates given.
  467.  
  468. EXAMPLE:
  469.  
  470.    "%CPOS=12,13. Hello World, I am at Y Position 12, and X Position 13"
  471.  
  472.  
  473. 19.    NL
  474.  
  475.  TITLE:
  476.  
  477.    Newline
  478.  
  479. TEMPLATE:
  480.  
  481.    %NL=<number of new lines>
  482.  
  483.    %NL.
  484.  
  485. FUNCTION:
  486.  
  487.    Displays either one, or a number of newlines.
  488.  
  489. EXAMPLE:
  490.  
  491.    "pretend-start%NL=3.pretend-end."
  492.  
  493.    pretend-start
  494.  
  495.  
  496.  
  497.    pretend-end
  498.  
  499.  
  500.    "This is line 1 %NL. This is Line 2 %NL.  This is Line 3 %NL."
  501.  
  502.    This is line 1
  503.     This is line 2
  504.      This is line 3
  505.  
  506.  
  507. 20.    REVIEW
  508.  
  509.  TITLE:
  510.    
  511.    Review Date
  512.  
  513. TEMPLATE:
  514.  
  515.    %REVIEW.
  516.  
  517.                                  - Page 7 -
  518. 20.    REVIEW
  519.  
  520.  
  521. FUNCTION:
  522.  
  523.    Displays the date when the user comes up, next, for review.
  524.  
  525. EXAMPLE:
  526.  
  527.    ".. and your account comes up for review on %REVIEW."
  528.  
  529.    .. and your account comes up for review on 12-Aug-94
  530.  
  531.  
  532. 21.    YPOS
  533.  
  534.  TITLE:
  535.  
  536.    Y-Position More counter.
  537.  
  538. TEMPLATE:
  539.  
  540.    %YPOS=<yposition>
  541.  
  542. FUNCTION:
  543.  
  544.    The users more counter (termed the Y Counter) reaches a stage, the
  545.    users maximum length of screen, whereby the user is asked if they
  546.    would like the remainder of the text displayed. This function allows
  547.    you to set the counter at a position of your choice, which can be
  548.    handy in certain instances.
  549.  
  550.  
  551. 22.    FNAME
  552.  
  553.  TITLE:
  554.  
  555.    First Name.
  556.  
  557. TEMPLATE:
  558.  
  559.    %FNAME.
  560.  
  561. FUNCTION:
  562.  
  563.    Display the users FIRST name.
  564.  
  565. EXAMPLE:
  566.  
  567.    If the users name was "Joe Bloggs" then having,
  568.  
  569.    "Your first name is %FNAME., Isn't it??"
  570.  
  571.    would result in,
  572.  
  573.    Your first name is Joe, isn't it??"
  574.  
  575.  
  576. 23.    LNAME
  577.  
  578.  TITLE:
  579.  
  580.    Last Name
  581.  
  582. TEMPLATE:
  583.  
  584.    Displays the users LAST name.
  585.  
  586. FUNCTION:
  587.  
  588.    If the users name was "Joe Bloggs" then having,
  589.  
  590.  
  591.                                  - Page 8 -
  592. 23.    LNAME
  593.  
  594.    "Your last name is %LNAME., Isn't it??"
  595.  
  596.    would result in,
  597.  
  598.    Your first name is Bloggs, isn't it??"
  599.  
  600. EXAMPLE:
  601.  
  602.  
  603. 24.    ANSI
  604.  
  605.  TITLE:
  606.  
  607.    Temporary Ansi Setting.
  608.  
  609. TEMPLATE:
  610.  
  611.    %ANSI.
  612.  
  613.    %ANSI=BOOL.
  614.  
  615. FUNCTION:
  616.  
  617.    This command turns the ANSI flags on/off depending on the command
  618.    used.
  619.  
  620. EXAMPLE:
  621.  
  622.    %ANSI. Results within the Ansi flags being turned ON.
  623.  
  624.    %ANSI=0. Turns the users ansi flags off..
  625.    %ANSI=1. Turns the users ansi flags on..
  626.  
  627. NOTE:
  628.  
  629.    This will only be a temporary setting of the users ansi flags, for the
  630.    duration of the display in hand, be it text-file or otherwise. The
  631.    users actual "preferenced" settings will be re-invoked after the
  632.    actions have been carried out (after the file is displayed, or
  633.    the text displayed..)
  634.  
  635.  
  636. 25.    STRWID
  637.  
  638.  TITLE:
  639.  
  640.    String Width
  641.  
  642. TEMPLATE:
  643.  
  644.    %STRWID=<Width>.
  645.  
  646. FUNCTION:
  647.  
  648.     This is a VERY handy function when using any form of AML code that
  649.     returns a STRING, such as the users name or telephone number,
  650.     file area information (area name, credits, etc.. etc..) The reason
  651.     it is handy is because normally if you did the following (within a menu
  652.     template file, and the speech-marks are needed for this one example)
  653.  
  654.     "%FNAME."
  655.  
  656.     would display
  657.  
  658.     "Sir_Andrew" ('Sir' to make the name longer of-course :)
  659.  
  660.     If indeed you had another user, one might get:
  661.  
  662.     "Dave"   - 4 Characters wide
  663.  
  664.                                  - Page 9 -
  665. 25.    STRWID
  666.  
  667.     "Steve"  - 5 Characters wide
  668.     "Tom"    - 3 Characters wide
  669.  
  670.     The thing to note here is that all the returned strings have
  671.     different widths. This can be rather worrying if one wishes to format
  672.     such strings within a IMB border frame, of sorts. So, in order to force
  673.     the name to be a set WIDTH (no matter what length the name is..) one
  674.     would use, prior to the accessing of the string, the command
  675. %STRWID=10.
  676.     Which would result in all the above being displayed as:
  677.  
  678.     "Sir_Andrew" - 10 Characters wide
  679.     "Dave      " - 10 Characters wide
  680.     "Steve     " - ... and so on,
  681.     "Tom       " - ... and so forth
  682.  
  683.     All 10 characters in width. One could also use it in the other
  684.     form,
  685.  
  686.     %STRWID=5."%FNAME."
  687.  
  688.     "Sir_A" - 5 Characters wide
  689.     "Dave " - etc..
  690.     "Steve"
  691.     "Tom  "
  692.  
  693.     This allows for you to correctly format your menus, but remember,
  694.     you need to place the %STRWID=<width>. BEFORE the accessing of the
  695.     required variable, just to initiate the value (if not already done
  696.     so)
  697.  
  698.     You only need to specify the %STRWID=<width>. at least ONCE and
  699.     all returned strings will be THAT width. You should also turn the
  700.     function off when not required by giving a value of 0, as in
  701.     %STRWID=0. (Turns the function off, and all strings are the normal
  702.     width)
  703.  
  704.     As a short example, the file/fmenu.tpl file normally displays
  705.     information on the file-area statistics for the area the user is
  706.     within. In order to do this we require the use of the new AML
  707.     codes, and to also correctly format the menu within the IBM border
  708.     we would use the following, within the required portion of the
  709.     file.
  710.  
  711.     %STRWID=14.
  712.     .----------------------------.
  713.     | Area Number: %AREANUMBER.|
  714.     | Area Name  : %AREANAME.|
  715.     | Total Files: %TOTALFILES.|
  716.     | Index Sort : %INDEXSORT.|
  717.     | Filter     : %FILTER.|
  718.     | Direction  : %DIRECTION.|
  719.     | Position   : %FILEPOS.|
  720.     | Credits    : %CREDITS.|
  721.     `----------------------------'
  722.     %STRWID=0.
  723.  
  724.     This would display the above box correctly formatted.. Most powerful,
  725.     infact, most handy.
  726.  
  727.  
  728. 26.    NAME
  729.  
  730.  TITLE:
  731.  
  732.    Name Display
  733.  
  734. TEMPLATE:
  735.  
  736.                                 - Page 10 -
  737. 26.    NAME
  738.  
  739.  
  740.    %NAME.
  741.  
  742. FUNCTION:
  743.  
  744.    Displays the full name of the user.
  745.  
  746. EXAMPLE:
  747.  
  748.    If the name of the user online is "Joe Bloggs" then the command
  749.    would return that as the name.
  750.  
  751.  
  752. 27.    UNAME
  753.  
  754.  TITLE:
  755.  
  756.    Underline Name
  757.  
  758. TEMPLATE:
  759.  
  760.    %UNAME.
  761.  
  762. FUNCTION:
  763.  
  764.    This has the effect of returning the users full name, but places
  765.    underscores '_' inplace of all spaces that would otherwise be
  766.    returned.
  767.  
  768. EXAMPLE:
  769.  
  770.    "I bet you didn't know that your name, underscored, is %UNAME."
  771.  
  772.    I bet you didn't know that your name, underscored, is Joe_Bloggs.
  773.  
  774.  
  775. 28.    VOICENO
  776.  
  777.  TITLE:
  778.  
  779.    Voice number
  780.  
  781. TEMPLATE:
  782.  
  783.    %VOICENO.
  784.  
  785. FUNCTION:
  786.  
  787.    Returns the entry within the users stats that relate to the voice
  788.    number entrance.
  789.  
  790.  
  791. 29.    DATANO
  792.  
  793.  TITLE:
  794.  
  795.    Data number
  796.  
  797. TEMPLATE:
  798.  
  799.    %DATANO.
  800.  
  801. FUNCTION:
  802.  
  803.    Returns the users Data telephone number.
  804.  
  805.  
  806. 30.    PASSWORD
  807.  
  808.  TITLE:
  809.  
  810.  
  811.                                 - Page 11 -
  812. 30.    PASSWORD
  813.  
  814.    Password
  815.  
  816. TEMPLATE:
  817.  
  818.    %PASSWORD.
  819.  
  820. FUNCTION:
  821.  
  822.    Returns the users password.
  823.  
  824.  
  825. 31.    HANDLE
  826.  
  827.  TITLE:
  828.  
  829.    Handle/Alias
  830.  
  831. TEMPLATE:
  832.  
  833.    %HANDLE.
  834.  
  835. FUNCTION:
  836.  
  837.    Returns the users Handle/Alias.
  838.  
  839.  
  840. 32.    ADDRESS
  841.  
  842.  TITLE:
  843.  
  844.    Address
  845.  
  846. TEMPLATE:
  847.  
  848.    %ADDRESS.
  849.  
  850. FUNCTION:
  851.  
  852.    Returns the first portion of the users address.
  853.  
  854.  
  855. 33.    CITY
  856.  
  857.  TITLE:
  858.  
  859.    City
  860.  
  861. TEMPLATE:
  862.  
  863.    %CITY.
  864.  
  865. FUNCTION:
  866.  
  867.    Returns the portion of the users address relating to the City.
  868.  
  869.  
  870. 34.    PROVINCE
  871.  
  872.  TITLE:
  873.  
  874.    Province
  875.  
  876. TEMPLATE:
  877.  
  878.    %PROVINCE.
  879.  
  880. FUNCTION:
  881.  
  882.    Returns the portion of the users address relating to the province.
  883.  
  884.  
  885.  
  886.  
  887.                                 - Page 12 -
  888. 34.    POSTCODE
  889.  
  890.  
  891. 35.    POSTCODE
  892.  
  893.  TITLE:
  894.  
  895.    Postcode
  896.  
  897. TEMPLATE:
  898.  
  899.    %POSTCODE.
  900.  
  901. FUNCTION:
  902.  
  903.    Returns the portion of the users address relating to the Postal/Zip
  904.    code.
  905.  
  906.  
  907. 36.    COUNTRY
  908.  
  909.  TITLE:
  910.  
  911.    Country
  912.  
  913. TEMPLATE:
  914.  
  915.    %COUNTRY.
  916.  
  917. FUNCTION:
  918.  
  919.    Returns the Country, 3 characters normally.
  920.  
  921.  
  922. 37.    LEVEL
  923.  
  924.  TITLE:
  925.  
  926.    Access Level
  927.  
  928. TEMPLATE:
  929.  
  930.    %LEVEL.
  931.  
  932. FUNCTION:
  933.  
  934.    Returns the access level of the user.
  935.  
  936.  
  937. 38.    VALID
  938.  
  939.  TITLE:
  940.  
  941.    Valid
  942.  
  943. TEMPLATE:
  944.  
  945.    %VALID.
  946.  
  947. FUNCTION:
  948.  
  949.    Returns BOOL state of the users validaty.
  950.  
  951.  
  952. 39.    CALLS
  953.  
  954.  TITLE:
  955.  
  956.    Calls
  957.  
  958. TEMPLATE:
  959.  
  960.    %CALLS.
  961.  
  962.                                 - Page 13 -
  963. 39.    CALLS
  964.  
  965.  
  966. FUNCTION:
  967.  
  968.    Returns the number of calls the user has made to the system.
  969.  
  970.  
  971. 40.    MSGLEFT
  972.  
  973.  TITLE:
  974.  
  975.    Messages Left
  976.  
  977. TEMPLATE:
  978.  
  979.    %MSGLEFT.
  980.  
  981. FUNCTION:
  982.  
  983.    Returns the number of messages the user has left.
  984.  
  985.  
  986. 41.    MSGREC
  987.  
  988.  TITLE:
  989.  
  990.    Messages received
  991.  
  992. TEMPLATE:
  993.  
  994.    %MSGREC.
  995.  
  996. FUNCTION:
  997.  
  998.    Returns the number of messages the user has received.
  999.  
  1000.  
  1001. 42.    FILESUP
  1002.  
  1003.  TITLE:
  1004.  
  1005.    Files uploaded
  1006.  
  1007. TEMPLATE:
  1008.  
  1009.    %FILESUP.
  1010.  
  1011. FUNCTION:
  1012.  
  1013.    Returns the number of files the user has uploaded.
  1014.  
  1015.  
  1016. 43.    FILESDN
  1017.  
  1018.  TITLE:
  1019.  
  1020.    Files Downloaded
  1021.  
  1022. TEMPLATE:
  1023.  
  1024.    %FILESDN.
  1025.  
  1026. FUNCTION:
  1027.  
  1028.    Returns the number of files the user has Downloaded.
  1029.  
  1030.  
  1031. 44.    BYTESUP
  1032.  
  1033.  TITLE:
  1034.  
  1035.    Bytes Uploaded
  1036.  
  1037.  
  1038.                                 - Page 14 -
  1039. 44.    BYTESUP
  1040.  
  1041. TEMPLATE:
  1042.  
  1043.    %BYTESUP.
  1044.  
  1045. FUNCTION:
  1046.  
  1047.    Returns the number of Bytes files the user has Uploaded.
  1048.  
  1049.  
  1050. 45.    BYTESDN
  1051.  
  1052.  TITLE:
  1053.  
  1054.    Bytes Downloaded
  1055.  
  1056. TEMPLATE:
  1057.  
  1058.    %BYTESDN.
  1059.  
  1060. FUNCTION:
  1061.  
  1062.    Returns the number of Bytes the user has Downloaded.
  1063.  
  1064.  
  1065. 46.    CREDITS
  1066.  
  1067.  TITLE:
  1068.  
  1069.    Credits
  1070.  
  1071. TEMPLATE:
  1072.  
  1073.    %CREDITS.
  1074.  
  1075. FUNCTION:
  1076.  
  1077.    Returns the number of Credits the user has left before they are
  1078.    required to upload.
  1079.  
  1080.  
  1081. 47.    FRATIO
  1082.  
  1083.  TITLE:
  1084.  
  1085.    File Ratio
  1086.  
  1087. TEMPLATE:
  1088.  
  1089.    %FRATIO.
  1090.  
  1091. FUNCTION:
  1092.  
  1093.    Returns the File-Ratio that the user has.
  1094.  
  1095.  
  1096. 48.    BRATIO
  1097.  
  1098.  TITLE:
  1099.  
  1100.    Bytes Ratio
  1101.  
  1102. TEMPLATE:
  1103.  
  1104.    %BRATIO.
  1105.  
  1106. FUNCTION:
  1107.  
  1108.    Returns the Bytes-Ratio the user has.
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.                                 - Page 15 -
  1115. 48.    SCRLENGTH
  1116.  
  1117.  
  1118. 49.    SCRLENGTH
  1119.  
  1120.  TITLE:
  1121.  
  1122.    Screen Length
  1123.  
  1124. TEMPLATE:
  1125.  
  1126.    %SCRLENGTH.
  1127.  
  1128. FUNCTION:
  1129.  
  1130.    Returns the Length of the screen the user has preferenced.
  1131.  
  1132.  
  1133. 50.    SCRWIDTH
  1134.  
  1135.  TITLE:
  1136.  
  1137.    Screen Width
  1138.  
  1139. TEMPLATE:
  1140.  
  1141.    %SCRWIDTH.
  1142.  
  1143. FUNCTION:
  1144.  
  1145.    Returns width of the screen that the user has preferenced.
  1146.  
  1147.  
  1148. 51.    MORE
  1149.  
  1150.  TITLE:
  1151.  
  1152.    More Prompt
  1153.  
  1154. TEMPLATE:
  1155.  
  1156.    %MORE.
  1157.  
  1158. FUNCTION:
  1159.  
  1160.    Returns state of the users More-Prompt variable.
  1161.  
  1162.  
  1163. 52.    TOTALFILES
  1164.  
  1165.  TITLE:
  1166.  
  1167.    Total Files
  1168.  
  1169. TEMPLATE:
  1170.  
  1171.    %TOTALFILES.
  1172.  
  1173. FUNCTION:
  1174.  
  1175.    Returns the total amount of files that are within the current
  1176.    file-area.
  1177.  
  1178.  
  1179. 53.    AREANUMBER
  1180.  
  1181.  TITLE:
  1182.  
  1183.    File Area Number
  1184.  
  1185. TEMPLATE:
  1186.  
  1187.    %AREANUMBER.
  1188.  
  1189.                                 - Page 16 -
  1190. 53.    AREANUMBER
  1191.  
  1192.  
  1193. FUNCTION:
  1194.  
  1195.    Returns the number of the file-area that the user is currently within.
  1196.  
  1197.  
  1198. 54.    FILEPOS
  1199.  
  1200.  TITLE:
  1201.  
  1202.    File Position
  1203.  
  1204. TEMPLATE:
  1205.  
  1206.    %FILEPOS.
  1207.  
  1208. FUNCTION:
  1209.  
  1210.    Returns the position within the current file-index that the user is
  1211.    currently positioned on.
  1212.  
  1213.  
  1214. 55.    AREANAME
  1215.  
  1216.  TITLE:
  1217.  
  1218.    File Area Name
  1219.  
  1220. TEMPLATE:
  1221.  
  1222.    %AREANAME.
  1223.  
  1224. FUNCTION:
  1225.  
  1226.    Returns the name of the file-area that the user is currently within.
  1227.  
  1228.  
  1229. 56.    INDEXSORT
  1230.  
  1231.  TITLE:
  1232.  
  1233.    Index Sort
  1234.  
  1235. TEMPLATE:
  1236.  
  1237.    %INDEXSORT.
  1238.  
  1239. FUNCTION:
  1240.  
  1241.    Returns the form of Index sorting that has been performed within
  1242.    the current file-index.
  1243.  
  1244.  
  1245. 57.    DIRECTION
  1246.  
  1247.  TITLE:
  1248.  
  1249.    File Scanning Direction
  1250.  
  1251. TEMPLATE:
  1252.  
  1253.    %DIRECTION.
  1254.  
  1255. FUNCTION:
  1256.  
  1257.    Returns the direction that the file-scanning is being done within.
  1258.  
  1259.  
  1260. 58.    FILTER
  1261.  
  1262.  TITLE:
  1263.  
  1264.  
  1265.                                 - Page 17 -
  1266. 58.    FILTER
  1267.  
  1268.    File Filter
  1269.  
  1270. TEMPLATE:
  1271.  
  1272.    %FILTER.
  1273.  
  1274. FUNCTION:
  1275.  
  1276.    Returns the state of the File-Filter setting.
  1277.  
  1278.  
  1279. 59.    FILESMARKED
  1280.  
  1281.  TITLE:
  1282.  
  1283.    Files Marked
  1284.  
  1285. TEMPLATE:
  1286.  
  1287.    %FILESMARKED.
  1288.  
  1289. FUNCTION:
  1290.  
  1291.    Returns the number of files that the user has marked for download.
  1292.  
  1293.  
  1294. 60.    RAW
  1295.  
  1296.  TITLE:
  1297.  
  1298.    Raw Mode
  1299.  
  1300. TEMPLATE:
  1301.  
  1302.    %RAW.
  1303.  
  1304. FUNCTION:
  1305.  
  1306.    When requesting for a DOS program to be run, be it game or utility. It
  1307.    is sometimes required to FORCE the program to use what is termed RAW
  1308.    mode. This basically means that whenever the user presses a key while
  1309.    inside of the DOS program, the program responds as if the character
  1310.    was HOTKEYED. Normal dos-programs buffer characters up and do not
  1311.    respond back "as soon as a key is pressed", so for this reason the
  1312.    more professional doors require RAW to be either set, or do it
  1313.    themsevles.
  1314.  
  1315.    See the documentation of the specific DOS program you are wishing
  1316.    to run for more information.
  1317.  
  1318.  
  1319. 61.    ECHO
  1320.  
  1321.  TITLE:
  1322.  
  1323.    Echo on
  1324.  
  1325. TEMPLATE:
  1326.  
  1327.    %ECHO.
  1328.  
  1329. FUNCTION:
  1330.  
  1331.    DOS programs sometimes require the ECHO command to be given, which
  1332.    echoes typed characters onto the screen rather than have them
  1333.    hidden.
  1334.  
  1335.    See the instructions for the particular DOS program you are wishing
  1336.    to run for more information on its calling sequence.
  1337.  
  1338.  
  1339.  
  1340.                                 - Page 18 -
  1341. 61.    CRLF
  1342.  
  1343.  
  1344. 62.    CRLF
  1345.  
  1346.  TITLE:
  1347.  
  1348.    Turn on both hard and soft RETURNS.
  1349.  
  1350. TEMPLATE:
  1351.  
  1352.    %CRLF.
  1353.  
  1354. FUNCTION:
  1355.  
  1356.    Some DOS programs require that CRLF be turned on. This command
  1357.    is the argument that does just that.
  1358.  
  1359.    See the documentation of the specific DOS program you are wishing
  1360.    to run for more information.
  1361.  
  1362.  
  1363. 63.    CTRL_C
  1364.  
  1365.  TITLE:
  1366.  
  1367.    Control C (^C)
  1368.  
  1369. TEMPLATE:
  1370.  
  1371.    %CTRL_C.
  1372.  
  1373. FUNCTION:
  1374.  
  1375.    DOS programs generally have the ability to be BREAKED by pressing the
  1376.    Control C (^C) keys. This combination generally terminates the
  1377.    the program and control is resumed to the calling sequence. However,
  1378.    in most instances the ^C press should be turned off when dealing
  1379.    with DOS programs. This is for security reasons, as it can sometimes
  1380.    lead to users (via the DOS program) gaining accidental access to
  1381.    a full blown DOS-Shell. Unless "required" this command is not
  1382.    normally required to be specified when calling DOS programs.
  1383.  
  1384.    If the command is ommited then ApT-BBS will ignore all presses
  1385.    of the ^C key, resulting in the DOS program never hearing the
  1386.    cries of the ^C key.
  1387.  
  1388.    See the documentation of the specific DOS program you are wishing
  1389.    to run for more information.
  1390.  
  1391.  
  1392. 64.    CTRL_D
  1393.  
  1394.  TITLE:
  1395.  
  1396.    Control D (^D)
  1397.  
  1398. TEMPLATE:
  1399.  
  1400.    %CTRL_D.
  1401.  
  1402. FUNCTION:
  1403.  
  1404.    DOS programs can generally be terminated by a combintion of key
  1405.    presses. The Control C (^C) press is generally a HARD and HARSH
  1406.    way of terminating a program, and not recommended. However,
  1407.    to allow the "program" to know that a request has been made to
  1408.    "terminate cleanly" the ^D key can be used (providing that the
  1409.    program monitors for it) - This will result in the program
  1410.    exiting back to ApT-BBS without any problems.
  1411.  
  1412.  
  1413.                                 - Page 19 -
  1414. 64.    CTRL_D
  1415.  
  1416.    It is a non-HARSH way of doing things, and always recommended
  1417.    that if the program accepts such a command, that it be supplied.
  1418.    Otherwise monitoring ofthe key by ApT-BBS will not be done,
  1419.    and the DOS program being used will never hear its cries.
  1420.  
  1421.    See the documentation of the specific DOS program you are wishing
  1422.    to run for more information.
  1423.  
  1424.  
  1425. 65.    HANDLER
  1426.  
  1427.  TITLE:
  1428.  
  1429.    Handler Return
  1430.  
  1431. TEMPLATE:
  1432.  
  1433.    %HANDLER.
  1434.  
  1435. FUNCTION:
  1436.  
  1437.    When calling a DOS program there are various methods open to you.
  1438.    Sometimes "total" control over the method of calling is required,
  1439.    and for this reason this command is given. It allows certain
  1440.    programs that need to be run through "newshell" to be done by
  1441.    passing the correct handler to the argument list. This is quite
  1442.    techincal and example files (both rexx and otherwise) are included
  1443.    within the package to gie examples of how one might use this
  1444.    argument.
  1445.  
  1446.    See the documentation of the specific DOS program you are wishing
  1447.    to run for more information.
  1448.  
  1449. EXAMPLE:
  1450.  
  1451.    Within ApT-Rexx one might wish to Run the game called Hack&Slash,
  1452.  
  1453.      /* Hack&Slash.apt
  1454.      **
  1455.      ** $VER: Hacl&Slash.apt 0.0.1 (25.4.93)
  1456.      **
  1457.      ** ARexx program for running Hack&Slash Cli door by ApT-Design.
  1458.      **
  1459.      ** Copyright © 1993 ApT-Design All Rights Reserved,AG
  1460.      **
  1461.      */
  1462.  
  1463.      parse arg lineno
  1464.  
  1465.      options results
  1466.  
  1467.      portname = 'APTREXX'lineno
  1468.      address value portname
  1469.  
  1470.      'GETSTR' USERNAME_STR ; name=result
  1471.      gamedoor= 'DOORS:Hack2/HSClient "'name'"'
  1472.      path='t:door-startup'||lineno
  1473.      open('temp',path,'W')
  1474.      writeln('temp','stack 10000') ; writeln('temp', gamedoor )
  1475.      writeln('temp','endcli')      ; close('temp')
  1476.      'RUNDOS' "run >nil: newshell >nil: %HANDLER. from "path" %RAW. %CRLF."
  1477.      EXIT
  1478.  
  1479.    With understanding of this complex calling sequence, it is possible
  1480.    to create a "virtual" Dos-Shell.
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.                                 - Page 20 -
  1487. 65.    COL
  1488.  
  1489.  
  1490. 66.    COL
  1491.  
  1492.  TITLE:
  1493.  
  1494.    Colour Flag
  1495.  
  1496. TEMPLATE:
  1497.  
  1498.    %COL.
  1499.  
  1500. FUNCTION:
  1501.  
  1502.    DOS programs sometimes require information about the users
  1503.    terminal preferences. Generally the request is to find out
  1504.    if the user is using a COLOUR display or a MONO display.
  1505.    This command returns the correct string pertaining to the
  1506.    preferences of the user.
  1507.  
  1508.    See the documentation of the specific DOS program you are wishing
  1509.    to run for more information.
  1510.  
  1511.